管理有順序的數據,並且能自定義資料的佈局
UICollectionView 有些地方與 UITableView 類似,它的每個儲存格也稱為 cell ,委任對象實作的方法也差不多。
iPhone 內建的 照片 App 就是用 UICollectionView 為主要呈現方式。
為了使用UICollectionView,我們需要創建Collection View。最簡單的方式就是從Library直接拖曳一個Collection View的component進storyboard
func initCollection() {
let layout = UICollectionViewFlowLayout()
//設定寬高
layout.itemSize = CGSize(width: 50, height: 50)
let collection = UICollectionView.init(frame: self.view.frame, collectionViewLayout: layout)
collection.dataSource = self
collection.delegate = self
collection.backgroundColor = colorLiteral(red: 0.3411764801, green: 0.6235294342, blue: 0.1686274558, alpha: 1)
collection.register(UICollectionViewCell.self, forCellWithReuseIdentifier: "cell")
self.view.addSubview(collection)
}
在設定完之後要讓我們的class遵從兩個protocol,UICollectionViewDataSource and UICollectionViewDelegate
需要實作method,我們要告訴collection view需要多少個section
func numberOfSections(in collectionView: UICollectionView) -> Int {
return 1
}
func collectionView(_ collection: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 7
}
func collectionView(_ collection: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collection.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath)
cell.layer.backgroundColor = colorLiteral(red: 0.4392156899, green: 0.01176470611, blue: 0.1921568662, alpha: 1)
return cell
}
這是以上code實做出來的結果